
#include "../header.h"

//1进程拷贝：子进程复制父进程的全部代码，除了ID号，
//写时拷贝：父进程创建子进程，子进程不会立即复制父进程的代码和数据部分。
//只有子进程要改变关键的代码和数据的时候，才复制数据或者是代码。

//2进程的独立性
int num = 100;
int main(int argc, char const *argv[])
{
    pid_t pid = fork();
    if(pid < 0)
    {
        perror("fork error\n");
        return -1;
    }
    if(pid > 0 )
    {
        printf("this is parents process:%d %d\n",getpid(),++num);
        //避免孤儿进程
        sleep(1);
    }
    if(pid == 0)
    {
        printf("this is child process:%d %d\n",getpid(),--num);
    }
    
    return 0;
}
